Astrazione è il processo di nascondere la complessità creando un "vocabolario" che opera a un livello concettuale superiore rispetto alle operazioni di base del computer. Ci permette di passare da imperativo comandi ("Come farlo") a dichiarativo intenzione ("Cosa fare").
1. La scala dell'astrazione
Mentre saliamo la scala, guadagniamo espressività umana ma dobbiamo pagare un "tassa di astrazione": ogni livello aggiunge distanza tra il codice e l'hardware, richiedendo più cicli della macchina per tradurre i concetti in azioni primitive.
2. Logica parametrica
Aggiungendo un passo argomento alla nostra sequenza funzione, trasformiamo uno strumento statico in un motore flessibile. Possiamo gestire direzioni diverse (incrementi positivi o negativi) senza riscrivere l'algoritmo principale: sequenza(5, 2, -1).
3. Il risultato
Invece di contatori di ciclo manuali, usiamo console.log(somma(sequenza(1, 10)));. Questo nasconde la "impiantistica" all'interno di unità riutilizzabili.